package com.panda.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.panda.common.annotation.Excel;
import com.panda.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 操作任务对象 t_panda_task_user
 * 
 * @author panda
 * @date 2021-03-04
 */
public class TPandaTaskUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** id */
    private String name;

    /** 任务ID */
    @Excel(name = "任务ID")
    private String linkId;

    /** 类型 */
    @Excel(name = "类型")
    private String type;

    /** 当天成交量 */
    @Excel(name = "当天成交量")
    private Integer dailyTradingVolume;

    /** 预留成交量 */
    @Excel(name = "预留成交量")
    private Integer reservedTradingVolume;

    /** 当天成交量 */
    @Excel(name = "当天成交量")
    private Integer beDailyTradingVolume;

    /** 预留成交量 */
    @Excel(name = "预留成交量")
    private Integer beReservedTradingVolume;

    /** 状态（0新建 1已完成） */
    @Excel(name = "状态", readConverterExp = "0=新建,1=已完成")
    private String status;

    /** 责任人 ID */
    @Excel(name = "责任人 ID")
    private Long responsibleUserId;




    /** 店铺名称 */
    @Excel(name = "店铺名称")
    private String storeName;


    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 金额 */
    @Excel(name = "金额")
    private BigDecimal price;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date tastDate;


    /** 评价信息：0不用评价，1评价 */
    @Excel(name = "评价信息：0不用评价，1评价")
    private String evaluation;

    /** 关键词 */
    @Excel(name = "关键词")
    private String keywords;

    /** 主图 */
    @Excel(name = "主图")
    private String picture;


    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startTime;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 操作员 */
    @Excel(name = "操作员")
    private String userName;

    // 分配计数器
    private int fpValue;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setLinkId(String linkId) 
    {
        this.linkId = linkId;
    }

    public String getLinkId() 
    {
        return linkId;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setResponsibleUserId(Long responsibleUserId) 
    {
        this.responsibleUserId = responsibleUserId;
    }

    public Long getResponsibleUserId() 
    {
        return responsibleUserId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("linkId", getLinkId())
            .append("type", getType())
            .append("status", getStatus())
            .append("responsibleUserId", getResponsibleUserId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }

    public String getStoreName() {
        return storeName;
    }

    public void setStoreName(String storeName) {
        this.storeName = storeName;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Date getTastDate() {
        return tastDate;
    }

    public void setTastDate(Date tastDate) {
        this.tastDate = tastDate;
    }

    public String getEvaluation() {
        return evaluation;
    }

    public void setEvaluation(String evaluation) {
        this.evaluation = evaluation;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public Integer getDailyTradingVolume() {
        return dailyTradingVolume;
    }

    public void setDailyTradingVolume(Integer dailyTradingVolume) {
        this.dailyTradingVolume = dailyTradingVolume;
    }

    public Integer getReservedTradingVolume() {
        return reservedTradingVolume;
    }

    public void setReservedTradingVolume(Integer reservedTradingVolume) {
        this.reservedTradingVolume = reservedTradingVolume;
    }

    public Integer getBeDailyTradingVolume() {
        return beDailyTradingVolume;
    }

    public void setBeDailyTradingVolume(Integer beDailyTradingVolume) {
        this.beDailyTradingVolume = beDailyTradingVolume;
    }

    public Integer getBeReservedTradingVolume() {
        return beReservedTradingVolume;
    }

    public void setBeReservedTradingVolume(Integer beReservedTradingVolume) {
        this.beReservedTradingVolume = beReservedTradingVolume;
    }

    public int getFpValue() {
        return fpValue;
    }

    public void setFpValue(int fpValue) {
        this.fpValue = fpValue;
    }

    public String getKeywords() {
        return keywords;
    }

    public void setKeywords(String keywords) {
        this.keywords = keywords;
    }

    public String getPicture() {
        return picture;
    }

    public void setPicture(String picture) {
        this.picture = picture;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }
}
